home *** CD-ROM | disk | FTP | other *** search
Text File | 1995-03-27 | 469 b | 28 lines | [TEXT/3PRM] |
- module reverse
-
- // A list containing n elements will be reversed n times.
-
- import StdEnv
-
- NrOfTimes :== 1000
-
- // Reversing a list of n integers n times.
-
- MyReverse::Int -> Int
- MyReverse n = last (Rev_n n [1..n])
- where
- Rev_n::Int [Int] -> [Int]
- Rev_n 1 list = Rev list []
- Rev_n n list = Rev_n (n - 1) (Rev list [])
-
- Rev::[Int] [Int] -> [Int]
- Rev [x:r] list = Rev r [x : list]
- Rev [] list = list
-
-
- // The Start rule.
-
- Start::Int
- Start = MyReverse NrOfTimes
-
-